# -*- coding: utf-8 -*-
"""
Created on Sun Dec  3 13:18:59 2017

@author: Jan
"""
from Crawl import Crawl
from parsers.ParserBaoZou import ParserBaoZou
from parsers.ParserCnxox import ParserCnxox
from parsers.ParserLaiFuDao import ParserLaiFuDao
from parsers.ParserNeiHan8 import ParserNeiHan8
from parsers.ParserPengFu import ParserPengFu
from parsers.ParserQiuShi import ParserQiuShi
from parsers.ParserWanDuanZi import ParserWanDuanZi
from parsers.ParserYouQuBa import ParserYouQuBa
from DealParser import DealParser
from threading import Thread
class RunAll():
    def __init__(self):
        self.crawl=Crawl()
        self.dealParser=DealParser()
    def runBaoZou(self,url='http://baozoumanhua.com/catalogs/text'):
        bzmhData=self.crawl.crawlHtml(url)
        bzmhParser=ParserBaoZou()
        bzmhParser.addData(bzmhData)
        self.dealParser.addParser(bzmhParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(bzmhParser,)).start()
    def runCnxox(self,url='http://www.cnxox.com/baike/'):
        cnxoxData=self.crawl.crawlHtml(url)
        cnxoxParser=ParserCnxox()
        cnxoxParser.addData(cnxoxData)
        self.dealParser.addParser(cnxoxParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(cnxoxParser,)).start()
    def runLaiFu(self,url='http://www.laifudao.com/wangwen/'):
        laifuData=self.crawl.crawlHtml(url)
        laifuParser=ParserLaiFuDao()
        laifuParser.addData(laifuData)
        self.dealParser.addParser(laifuParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(laifuParser,)).start()
    def runNeiHan(self,url='http://www.neihan8.com/wenzi/'):
        neihanData=self.crawl.crawlHtml(url)
        neihanParser=ParserNeiHan8()
        neihanParser.addData(neihanData)
        self.dealParser.addParser(neihanParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(neihanParser,)).start()
    def runPengFu(self,url='https://www.pengfu.com/xiaohua_1.html'):
        pengfuData=self.crawl.crawlHtml(url)
        pengfuParser=ParserPengFu()
        pengfuParser.addData(pengfuData)
        self.dealParser.addParser(pengfuParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(pengfuParser,)).start()
    def runQiuShi(self,url='https://www.qiushibaike.com/text/'):
        qiushiData=self.crawl.crawlHtml(url)
        qiushiParser=ParserQiuShi()
        qiushiParser.addData(qiushiData)
        self.dealParser.addParser(qiushiParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(qiushiParser,)).start()
    def runWanDuanZi(self,url='http://www.waduanzi.com/'):
        wdzData=self.crawl.crawlHtml(url)
        wdzParser=ParserWanDuanZi()
        wdzParser.addData(wdzData)
        self.dealParser.addParser(wdzData)
        Thread(target=self.dealParser.dealSingleJoke,args=(wdzParser,)).start()
    def runYouQuBa(self,url='http://www.youquba.net/wangwen/'):
        yqbData=self.crawl.crawlHtml(url)
        yqbParser=ParserYouQuBa()
        yqbParser.addData(yqbData)
        self.dealParser.addParser(yqbParser)
        Thread(target=self.dealParser.dealSingleJoke,args=(yqbParser,)).start()
    #simhash清洗数据
    def washData(self):
        Thread(target=self.dealParser.dealRedisData).start()
if __name__=='__main__':
        runAll=RunAll()
        #runAll.runBaoZou()
        #runAll.runCnxox()
        #runAll.runLaiFu()
        #runAll.runNeiHan()
        #runAll.runPengFu()
        #runAll.runQiuShi()
        #runAll.runWanDuanZi()
        #runAll.runYouQuBa()
        runAll.washData()